package com.cyx;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

/**
 * @author 陈裕星
 * @version 1.0
 * 给你一个以行程长度编码压缩的整数列表 nums 。
 * 考虑每对相邻的两个元素 [freq, val] = [nums[2*i], nums[2*i+1]] （其中 i >= 0 ），每一对都表示解压后子列表中有 freq 个值为 val 的元素，你需要从左到右连接所有子列表以生成解压后的列表。
 * 请你返回解压后的列表。
 * 输入：nums = [1,1,2,3]
 * 输出：[1,3,3]
 */
public class 解压缩编码列表 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] nums = new int[n];
        for (int i = 0; i < n; i++) {
            nums[i] = sc.nextInt();
        }

        ArrayList<int[]> list = new ArrayList<>();
        for (int i = 0; i < nums.length; i+=2) {
            int freq = nums[i];
            int val = nums[i+1];

            if(freq > 0){
                int[] arr = new int[freq];
                Arrays.fill(arr,val);
                list.add(arr);
            }
        }
        List<Integer> res = new ArrayList<>();
        int len = list.size();
        for (int i = 0; i < len; i++) {
            int[] a = list.get(i);
            for (int j = 0; j < a.length; j++) {
                res.add(a[j]);
            }
        }
        System.out.println(res.toString());
    }
}
